﻿using System;
using System.Collections.Generic;
using HAVNet.Core;
using HAVNet.Core.String;


namespace HAVNet.Intros.AST
{
    public class ASTAttributes : List<ASTAttribute>
    {
        public override string ToString ()
        {
            return Strings.joinobjs (", ", this);
        }
    }

    public class ASTAttribute : ASTNode
    {
        public          ASTTypeName             name { get; set; }
        public readonly ASTAttributeArguments   arguments = new ASTAttributeArguments ();

        public override string ToString ()
        {
            return
                Lazy.toStringNN     (name, "") +
                "(" +
                arguments.ToString  () +
                ")";
        }
    }
}
